1 package org.smartcomps.twister.engine.core.definition; 2 3 import junit.framework.TestCase; 4 import net.sf.hibernate.tool.hbm2ddl.SchemaExport; 5 import net.sf.hibernate.cfg.Configuration; 6 import org.smartcomps.twister.common.transaction.TransactionManager; 7 import org.smartcomps.twister.common.lifecycle.LifecycleManager; 8 import org.smartcomps.twister.engine.priv.core.definition.ActivityFactory; 9 import org.smartcomps.twister.engine.priv.core.definition.Sequence; 10 import org.smartcomps.twister.engine.priv.core.definition.Invoke; 11 import org.smartcomps.twister.engine.priv.core.definition.ProcessFactory; 12 import org.smartcomps.twister.engine.priv.core.definition.Activity; 13 import org.smartcomps.twister.util.BeanTester; 14 15 /*** 16 * Tests a simple sequence with three invokes (as a sequence by itself 17 * doesn't really make sense). 18 */ 19 public class TestSequence extends TestCase { 20 21 public static Sequence testSequence = null; 22 23 private TestProcess testProcess = new TestProcess(); 24 private ProcessFactory processFactory = new ProcessFactory(); 25 private ActivityFactory activityFactory = new ActivityFactory(); 26 private BeanTester beanTester = new BeanTester(new String[] {"Id", "Index"}); 27 28 protected void setUp() throws Exception { 29 LifecycleManager.getLifecycleManager().createResources(); 30 LifecycleManager.getLifecycleManager().startResources(); 31 32 SchemaExport schemaExport = new SchemaExport(new Configuration().configure()); 33 schemaExport.create(true, true); 34 35 TransactionManager.beginTransaction(); 36 testProcess.testCreate(); 37 } 38 39 protected void tearDown() throws Exception { 40 TransactionManager.commitTransaction(); 41 42 LifecycleManager.getLifecycleManager().stopResources(); 43 LifecycleManager.getLifecycleManager().destroyResources(); } 44 45 public void testCreate() throws Exception { 46 testSequence = (Sequence) ActivityFactory.createActivity(Sequence.class, TestProcess.testProcess); 47 Invoke invoke1 = (Invoke) ActivityFactory.createActivity(Invoke.class, testSequence); 48 beanTester.initializeProperties("invoke1", invoke1); 49 Invoke invoke2 = (Invoke) ActivityFactory.createActivity(Invoke.class, testSequence); 50 beanTester.initializeProperties("invoke2", invoke2); 51 Invoke invoke3 = (Invoke) ActivityFactory.createActivity(Invoke.class, testSequence); 52 beanTester.initializeProperties("invoke3", invoke3); 53 54 TransactionManager.commitTransaction(); 55 TransactionManager.beginTransaction(); 56 57 Sequence resultSeq = (Sequence) ProcessFactory.getByName(TestProcess.testProcess.getName()).getActivity(); 58 assertNotNull("Sequence process is null", resultSeq.getProcess()); 59 Activity act1 = (Activity) resultSeq.getActivities().get(0); 60 assertTrue("First activity in the sequence is not an Invoke", act1 instanceof Invoke); 61 assertTrue("First activity attributes have been changed", beanTester.testValues("invoke1", act1)); 62 Activity act2 = (Activity) resultSeq.getActivities().get(1); 63 assertTrue("Second activity in the sequence is not an Invoke", act2 instanceof Invoke); 64 assertTrue("Second activity attributes have been changed", beanTester.testValues("invoke2", act2)); 65 Activity act3 = (Activity) resultSeq.getActivities().get(2); 66 assertTrue("Third activity in the sequence is not an Invoke", act3 instanceof Invoke); 67 assertTrue("Third activity attributes have been changed", beanTester.testValues("invoke3", act3)); 68 69 invoke1.setInputVariable(null); 70 invoke1.setOutputVariable(null); 71 invoke2.setInputVariable(null); 72 invoke2.setOutputVariable(null); 73 invoke3.setInputVariable(null); 74 invoke3.setOutputVariable(null); 75 } 76 77 }

This page was automatically generated by Maven